package com.eatme.leetcode.problems;


import com.eatme.core.heap.MinHeap;

public class Solution215V4 {

    public int findKthLargest(int[] nums, int k) {

        // 使用最小堆
        MinHeap<Integer> pq = new MinHeap<>();
        for(int i = 0; i < k; i ++)
            pq.add(nums[i]);

        for(int i = k; i < nums.length; i ++)
            if(!pq.isEmpty() && nums[i] > pq.findMin())
                // 我们可以直接使用我们封装 Heap 类中的 replace
                pq.replace(nums[i]);

        return pq.findMin();
    }
}
